/* 该文件用于创建action */
import {JIA,JIAN} from '../constant'
import store from '../store'
import axios from 'axios'

//创建加的action —— 同步action（一般对象）
export const createJiaAction = n => ({type:JIA,data:n})

//创建减的action —— 同步action（一般对象）
export const createJianAction = n => ({type:JIAN,data:n})

//创建奇数加的action —— 异步action（函数）
export function createJiaOddAction (n){
	return (dispatch)=>{
		if(store.getState().he % 2) dispatch(createJiaAction(n))
	}
}

//创建等一等加的action  —— 异步action（函数）
//通常情况下，异步action中一定会分发一个同步action
export function createJiaWaitAction (n,t){
	return (dispatch)=>{
		setTimeout(() => {
			dispatch(createJiaAction(n))
		},t);
	}
}

//创建联系服务器再加的action  —— 异步action（函数）
export function createJiaServerAction(){
	return (dispatch)=>{
		axios.get('https://api.apiopen.top/getJoke?type=json').then(
			response => {
				const {text} = response.data.result[0]
				console.log(text)
				dispatch(createJiaAction(text.length))
			},
			() => {
				dispatch(createJianAction(1))
			}
		)
	}
}
